home *** CD-ROM | disk | FTP | other *** search
/ X User Tools / X User Tools (O'Reilly and Associates)(1994).ISO / sources / libxpm / libxpm34.gz / libxpm34 / xpm-3.4 / lib / Imakefile < prev    next >
Makefile  |  1994-03-23  |  3KB  |  115 lines

  1. # Copyright 1989-94 GROUPE BULL -- See licence conditions in file COPYRIGHT
  2. #
  3. # XPM Imakefile - Arnaud LE HORS
  4. #
  5.  
  6. # SGI requires a specification file for shared library that we don't have
  7. #if defined(SGIArchitecture) && !SystemV4
  8. #define DoSharedLib No
  9. #else
  10. #define DoSharedLib SharedLibX
  11. #endif
  12.  
  13. #if defined(LinuxArchitecture)
  14. #include "Imakefile.dll"
  15. #undef DoSharedLib
  16. #define DoNormalLib NormalLibX
  17. #endif
  18.  
  19. #ifdef RsArchitecture
  20. REQUIREDLIBS = -lXext -lXt -lX11
  21. #endif
  22.  
  23. # on Dec Alpha we need to define the following to build the shared library
  24. #ifdef AlphaArchitecture
  25. SO_REQLIBS=-lX11 -lc
  26. #endif
  27.  
  28. ## if your system doesn't provide strcasecmp add -DNEED_STRCASECMP
  29. ## if your system doesn't provide strdup add -DNEED_STRDUP
  30. ## if your system doesn't provide pipe remove -DZPIPE
  31.  
  32. #if defined(UltrixArchitecture) || \
  33.     (defined(MipsArchitecture) && !defined(SGIArchitecture))
  34. DEFINES = -DZPIPE -DNEED_STRDUP
  35. #else
  36. DEFINES = -DZPIPE
  37. #endif
  38.  
  39.  
  40. #
  41. # Normaly the following part should not need to be edited
  42. #
  43.  
  44. #define DoNormalLib NormalLibX
  45.  
  46. #if (ProjectX < 5)
  47.     STD_DEFINES = LibraryDefines
  48.     CDEBUGFLAGS = LibraryCDebugFlags
  49. #else
  50. /* R5 needs another .tmpl file to find these #def's.  This .tmpl file will */
  51. /* also set STD_DEFINES and CDEBUGFLAGS properly.                          */
  52. #include <Library.tmpl>
  53. #endif
  54.  
  55.        INCLUDES = -I.
  56.    INSTALLFLAGS = $(INSTINCFLAGS)
  57.        LINTLIBS = $(LINTXTOLL) $(LINTXLIB) 
  58.  
  59. #ifdef OsNameDefines
  60. OS_NAME_DEFINES = OsNameDefines
  61. #endif
  62.  
  63. # get the version numbers from the xpm include file
  64. #define XPM_NUMBERS
  65. #include "xpm.h"
  66. SOXPMLIBREV = XpmVersion./**/XpmRevision
  67.  
  68. HEADERS = xpm.h
  69.   SRCS = data.c create.c misc.c rgb.c scan.c parse.c hashtable.c \
  70.      XpmCrBufFrI.c XpmCrDataFrP.c XpmCrPFrBuf.c XpmRdFToI.c XpmWrFFrI.c \
  71.      XpmCrBufFrP.c XpmCrIFrBuf.c XpmCrPFrData.c XpmRdFToP.c XpmWrFFrP.c \
  72.      XpmCrDataFrI.c XpmCrIFrData.c XpmRdFToData.c XpmWrFFrData.c
  73.  
  74.   OBJS = data.o create.o misc.o rgb.o scan.o parse.o hashtable.o \
  75.      XpmCrBufFrI.o XpmCrDataFrP.o XpmCrPFrBuf.o XpmRdFToI.o XpmWrFFrI.o \
  76.      XpmCrBufFrP.o XpmCrIFrBuf.o XpmCrPFrData.o XpmRdFToP.o XpmWrFFrP.o \
  77.      XpmCrDataFrI.o XpmCrIFrData.o XpmRdFToData.o XpmWrFFrData.o
  78.  
  79. #if (ProjectX < 5)
  80.  
  81. #if DoSharedLib
  82. SharedLibraryObjectRule()
  83. NormalSharedLibraryTarget(Xpm,$(SOXPMLIBREV),$(OBJS))
  84. InstallSharedLibrary(Xpm,$(SOXPMLIBREV),$(USRLIBDIR))
  85. #else
  86. NormalLibraryObjectRule()
  87. #endif
  88. NormalLibraryTarget(Xpm,$(OBJS))
  89. InstallLibrary(Xpm,$(USRLIBDIR))
  90.  
  91. #else
  92.  
  93. LibraryObjectRule()
  94.  
  95. #if DoSharedLib
  96. #if DoNormalLib
  97. SharedLibraryTarget(Xpm,$(SOXPMLIBREV),$(OBJS),shared,..)
  98. #else
  99. SharedLibraryTarget(Xpm,$(SOXPMLIBREV),$(OBJS),.,.)
  100. #endif
  101. InstallSharedLibrary(Xpm,$(SOXPMLIBREV),$(USRLIBDIR))
  102. #endif
  103. #if DoNormalLib
  104. NormalLibraryTarget(Xpm,$(OBJS))
  105. InstallLibrary(Xpm,$(USRLIBDIR))
  106. #endif
  107.  
  108. #endif 
  109.  
  110. InstallMultiple($(HEADERS),$(INCDIR))
  111. LintLibraryTarget(Xpm,$(SRCS))
  112. InstallLintLibrary(Xpm,$(LINTLIBDIR))
  113. DependTarget()
  114. NormalLintTarget($(SRCS))
  115.